package com.scalar.chiptrack.operations.process;

import java.util.ArrayList;
import java.util.HashMap;

public class ProcessTrack {
	private ArrayList list = null;
	private StepProperty fab = null;
	private ArrayList sortList = null;
	private StepProperty waferStore = null;
	private StepProperty dieBank = null;
	private HashMap classStore = null;
	private StepProperty[] assemblyList = null;
	private HashMap markAndFG = null;
	private HashMap test = null;

	public ProcessTrack(){
	}

	public int getAssemblyCount(){
		return assemblyList.length;
	}

	public void setFab(StepProperty fab){
		this.fab = fab;
	}
	public StepProperty getFab(){
		return fab;
	}

	public ArrayList getSort(){
		return sortList;
	}
	public void setSort(ArrayList sortList){
		this.sortList = sortList;
	}

	public void setWaferStore(StepProperty waferStore){
		this.waferStore = waferStore;
	}
	public StepProperty getWaferStore(){
		return waferStore;
	}
	
	public void setDieBank(StepProperty dieBank){
		this.dieBank = dieBank;
	}
	public StepProperty getDieBank(){
		return dieBank;
	}
	
	public void setClassStore(HashMap classStore){
		this.classStore = classStore;
	}
	public HashMap getClassStore(){
		return classStore;
	}
	
	public void setAssemblyList(StepProperty[] assemblyList){
		this.assemblyList = assemblyList;
	}
	public StepProperty[] getAssemblyList(){
		return assemblyList;
	}
 
	public void setTest(HashMap test){
		this.test = test;
	}
	public HashMap getTest(){
		return test;
	}

	public void setMarkAndFG(HashMap markAndFG){
		this.markAndFG = markAndFG;
	}
	public HashMap getMarkAndFG(){
		return markAndFG;
	}
 
	/*public static void main(String[] args){

		ArrayList[] list = null;

		try{
			list = getProcessView(175);
		}catch(Exception e){
			e.printStackTrace(System.err);
		}

		int length = list.length;
		
		ArrayList fabList = null;
		ArrayList[] assemblyList = null;
		for(int k=0; k<length; k++){
		Iterator it = list[k].iterator();

		fabList = (ArrayList)it.next();
		assemblyList = (ArrayList[])it.next();
		
		it = fabList.iterator();

		while(it.hasNext()){
			StepProperty step = (StepProperty)it.next();
			System.out.println("\t PType = "+step.getProcessType());
		}
		
		for(int i=0; i<assemblyList.length; i++){
			
			it = assemblyList[i].iterator();
			while(it.hasNext()){
				ArrayList temp_list = (ArrayList)it.next();
				Iterator temp = temp_list.iterator();
				while(temp.hasNext()){
					StepProperty step = (StepProperty)temp.next();
					System.out.println("\t\t i="+i+" Test Type = "+step.getProcessType());
					if(step.getBinSetup() == true){
						ArrayList[] fgList = (ArrayList[])temp.next();
						for(int j=0; j<fgList.length; j++){
							Iterator m = fgList[i].iterator();
							while(m.hasNext()){
								StepProperty fgStep = (StepProperty)m.next();
								System.out.println("\t\t\t i="+i+"; j="+j+" Type = "+fgStep.getProcessType());
							}
						}
					}
				}
			}

			System.out.println();
			System.out.println();
		}
		}
	}*/

}